"""
RAG 系统提示模板
包含各种场景下的提示词模板
"""

# 基础 RAG 提示模板
RAG_PROMPT_TEMPLATE = """
你是一个专业的教育助手，请基于以下检索到的相关文档内容来回答用户的问题。

相关文档内容：
{context}

用户问题：{question}

请根据上述文档内容，准确、详细地回答用户的问题。如果文档内容不足以回答问题，请明确说明。

回答：
"""

# 查询重写提示模板
QUERY_REWRITE_TEMPLATE = """
请将以下用户查询重写为更适合检索的形式，使其更加清晰和具体：

原始查询：{query}

重写后的查询：
"""

# 查询分类提示模板
QUERY_CLASSIFICATION_TEMPLATE = """
请对以下用户查询进行分类，判断其属于哪种类型：

1. 事实性问题 (factual)
2. 概念解释 (conceptual)
3. 操作指导 (procedural)
4. 比较分析 (comparative)
5. 其他 (other)

用户查询：{query}

分类结果（只返回类别名称）：
"""

# 答案质量评估提示模板
ANSWER_QUALITY_TEMPLATE = """
请评估以下回答的质量，从1-10分打分：

问题：{question}
回答：{answer}
参考文档：{context}

评估维度：
1. 准确性：回答是否准确
2. 完整性：回答是否完整
3. 相关性：回答是否与问题相关
4. 清晰度：回答是否清晰易懂

总分（1-10）：
"""

# 多轮对话提示模板
MULTI_TURN_TEMPLATE = """
你是一个专业的教育助手，请基于对话历史和检索到的相关文档内容来回答用户的问题。

对话历史：
{chat_history}

相关文档内容：
{context}

当前问题：{question}

请结合对话历史和文档内容，给出准确、连贯的回答：

回答：
"""

# 总结提示模板
SUMMARIZATION_TEMPLATE = """
请对以下文档内容进行总结，提取关键信息：

文档内容：
{content}

总结要求：
1. 保留核心信息
2. 语言简洁明了
3. 结构清晰

总结：
"""